import streamlit as st
from database import add_user
import os

# 获取当前路径
curr_path = os.getcwd()
image_path = os.path.join(curr_path, "assets")

# 加载图标
def load_icon(icon_name):
    """加载图标"""
    return os.path.join(image_path, f"{icon_name}.png")

# 设置页面标题和Logo
col1, col2 = st.columns([1, 7])
with col1:
    st.image(load_icon("logo"), width=80)  # Logo 大小设置为 46px
with col2:
    st.title("注册机器猫智能客服系统")
st.markdown("---")

# 注册表单
def register_form():
    with st.form("注册"):
        username = st.text_input("用户名")
        password = st.text_input("密码", type="password")
        confirm_password = st.text_input("确认密码", type="password")
        role = st.selectbox("角色", ["user", "admin"])
        submit_button = st.form_submit_button("注册")

        if submit_button:
            # 表单验证
            if not username or not password or not confirm_password:
                st.error("请填写所有字段")
            elif password != confirm_password:
                st.error("两次输入的密码不一致")
            else:
                # 调用 add_user 函数并根据返回值显示相应信息
                success = add_user(username, password, role)
                if success:
                    st.success("用户注册成功！")
                    # st.rerun()  # 刷新页面以清除表单数据
                else:
                    st.error("注册失败，用户名可能已存在")

# 显示注册表单
register_form()

st.markdown("---")
# 返回登录按钮
if st.button("返回登录"):
    st.switch_page("pages/1_login.py")

# 版权信息
st.markdown("---")
st.markdown("©2024-2025 Doraemon-Bot 光环AIE-51-1G保留所有权利。")